
// 类型别名  => 类型别名用来给一个类型起个新名字。
// 类型别名常用于联合类型

// type NAS = number|string;

// let a:NAS = 100;

// function reverse(x: NAS): NAS | void {
//     if (typeof x === 'number') { // 123
//         return Number(x.toString().split('').reverse().join(''));
//     } else if (typeof x === 'string') {
//         return x.split('').reverse().join('');
//     }
// }

// type Name = string;
// type NameResolver = () => string;
// type NameOrResolver = Name | NameResolver;

// // 形参可以接收字符串或回调函数(返回字符串)
// function getName(n: NameOrResolver): Name {
//     if (typeof n === 'string') {
//         return n;
//     } else {
//         return n();
//     }
// }

// 也可以做接口使用
// interface Person {
//     name:string,
//     age:string
// }

type Human = {
    name:string,
    age:number,
    height?:number
}

let zhang:Human = {
    name:"张三",
    age:18,
    height:177
}






export default {}